Method for detecting mobile device charging points

ABSTRACT

As disclosed herein a method, executed by a computer, for detecting charging points for mobile devices includes determining the current location of the mobile device, identifying a charging point proximate to the current location, determining the probable travel time to the identified charging point, and activating a power conservation mode if the probable travel time is greater than the remaining estimated battery life. The current location may be completely stationary or stationary relative to some sort of transportation. The method may determine the likelihood the mobile device will visit a charging point. The method may also identify a location as a potential charging point, and after multiple uses, the location may be confirmed as a charging point. Additionally, the method may remove inactive charging points from a list of charging points. A computer system, and computer program product corresponding to the method are also disclosed herein.

BACKGROUND OF THE INVENTION

The present invention relates generally to the field of mobile devices,and more particularly to mobile device battery usage and conservationmethods.

Mobile electronic devices (e.g., smart phones, tablets, pdas, and thelike), also known as smart devices, are an integral part of the everydaylife of many individuals. Society has become increasingly dependent onmobile devices for various aspects of day-to-day activities. Thesedevices are only useful if the battery is charged, and when a deviceruns out of battery charge, it can be very disruptive to the user.Current technology relies on the user to monitor the battery chargeremaining, and determine where and when they will be in a location thatwill accommodate charging of the mobile device.

SUMMARY

As disclosed herein a method, executed by a computer, for detectingcharging points for mobile devices includes determining the currentlocation of the mobile device, identifying a charging point proximate tothe current location, determining the probable travel time to theidentified charging point, and activating a power conservation mode ifthe probable travel time is greater than the remaining estimated batterylife. The current location may be completely stationary or stationaryrelative to some sort of transportation. The method may determine thelikelihood the mobile device will visit a charging point. The method mayalso identify a location as a potential charging point, and aftermultiple uses, the location may be confirmed as a charging point.Additionally, the method may remove inactive charging points from a listof charging points. A computer system, and computer program productcorresponding to the method are also disclosed herein.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a functional block diagram of one embodiment of a wirelessmobile device environment in which at least some of the embodimentsdisclosed herein may be deployed;

FIG. 2 is a flowchart depicting one embodiment of a charging pointdetection method;

FIG. 3 is a flowchart depicting one embodiment of an operation tocatalog charging information corresponding to a current location;

FIG. 4 is a flowchart depicting one embodiment of a battery lifeconservation method;

FIG. 5 is a flowchart depicting one embodiment of an inactive chargingpoint removal method;

FIG. 6 is a text diagram depicting one embodiment of monitoringinformation; and

FIG. 7 is a block diagram depicting various components of one embodimentof a computer suitable for executing the methods disclosed herein.

DETAILED DESCRIPTION

In a society that is becoming increasingly dependent on various mobiledevices for managing daily activities, it can be very disruptive to auser when a battery-powered mobile device runs out of charge.Individuals are often habitual with regard to the time and location inwhich they charge their devices. For example, some may charge theirdevice overnight by their bedside, others may charge the device duringlunch at their place of employment, while commuters may prefer to chargeas they drive. There is a need for a mobile device to have the abilityto detect and maintain a list of charging points, monitor the currentlocation of the mobile device, determine the travel time to a probablecharging point, and if necessary, enter a power conservation mode topreserve battery power. The embodiments disclosed herein provide amethod that both detects charging points and conserves battery powerwhile in transit to a charging point.

FIG. 1 is a functional block diagram of one embodiment of a mobiledevice environment 100. As depicted, the mobile device environment 100includes one or more mobile devices 110, one or more servers 120, and anetwork 130. The mobile device environment 100 is one example of anenvironment in which at least some of the embodiments disclosed hereinmay be deployed.

A mobile device 110 may be a handheld electronic device often referredto as a smart device (e.g., smartphone, tablet, GPS, PDA, laptop, or thelike). In one example, a mobile device 110, such as a tablet, may beused to video conference with a group of colleagues when holding aremote business meeting. In another example, a user on a family vacationis attempting to travel to a point of interest, and is using a GPS toguide them to the destination. An additional example includes a usermonitoring their email and instant messaging with an acquaintance usinga smartphone.

The mobile device 110 may connect to a server 120 to provide a serviceto the user of the mobile device 110. The server 120 may be accessibleto the mobile device 110 via the network 130. In one embodiment, themobile device 110 connects to the network 130 using a wirelessconnection provided by a mobile service provider (e.g., AT&T, Verizon,Sprint, or the like). Alternatively, the mobile device 110 may connectto the network 130 using an available wireless internet connection, suchas those provided in many Wi-Fi hot spots, or available in many eatingestablishments or places of employment. The server 120 may providevarious services to a mobile device 110 (i.e., cloud services, emailservices, instant messaging services, http services, music streaming,and video streaming, among many others).

It should be noted that the server 120 may include internal and externalhardware components, as depicted and described in further detail withrespect to FIG. 7. Furthermore, the network 130 can be any combinationof connections and protocols that will support communications betweenthe mobile clients 110 and the servers 120. For example, the network 130can be a local area network (LAN), a wide area network (WAN) such as theInternet, or a combination of the two, and can include wired, wireless,or fiber optic connections.

FIG. 2 is a flowchart depicting one embodiment of a charging pointdetection method 200. As depicted, the charging point detection method200 includes determining (210) a current location, determining (220) thecharging status, determining (230) whether a device is charging,determining (240) the charging duration, determining (250) whether therehas been sustained charging, and cataloging (260) the current location.The charging point detection method 200 enables a mobile device to trackthe location of the mobile device and document charging points.

Determining (210) a current location may include identifying ageographic location of a mobile device. In one embodiment, thegeographic location is determined using Global Positioning System (GPS)functionality and receiving signals and data from satellites todetermine the current location. In another embodiment, the currentlocation of the mobile device is determined using Wi-Fi signalstrengths. Alternatively, the location of the mobile device may also bedetermined using cell phone towers. Those of skill in the art willappreciate that there are numerous options available for determining thecurrent location of a mobile device. Each method of determining alocation may produce some identifying string or code to represent thecurrent location, and that string or code may be used as a locationidentifier for the mobile device.

The mobile device may be located within a mode of transportation.Examples include an automobile, train, bus, motorcycle, recreationalvehicle, or the like. The mobile device may reference the form oftransportation as a current location, as opposed to referencing aphysical geographic location (e.g., GPS coordinates). In one embodiment,the mobile device may associate with an automobile through a Bluetoothconnection, and use the Bluetooth address corresponding to theautomobile as a location identifier. In another embodiment, the mobiledevice associates with a Radio-frequency identification (RFID) tagattached to a recreational vehicle and uses the RFID as a locationidentifier.

Determining (220) the charging status may include verifying if a batterycharger, recharger, or some other device providing similar function isconnected to the mobile device, and the level of charge in the batteryis increasing. In one embodiment, the mobile device is connected to acharging device that is plugged into an Alternating Current (AC) wallelectrical receptacle. In another embodiment, the mobile device isconnected to a charging device that is plugged into the Direct Current(DC) electrical system of an automobile. Alternatively, the mobiledevice may be charging while connected to another electronic device(e.g., a computer) using a connection cable such as a USB cable, or thelike. After determining the charging status, information pertaining tolocation and charging status may be cataloged for future reference(e.g., date, time, location identifier, charging status, or similarinformation).

Determining (230) whether the device is charging may include verifyingthat the level of charge in the battery is increasing. If the device ischarging, the depicted method 200 proceeds to the determine chargingduration operation 240. Otherwise the method iterates to the determinelocation operation 210.

Determining (240) the charging duration may include verifying if themobile device has been charging for at least a predetermined duration.Charging duration may be used to determine if sustained charging hasbeen achieved. Sustained charging may be achieved when a mobile deviceis continuously charging in a location for at least a predeterminedduration. In one embodiment, verification of sustained charging includesstarting a timer corresponding to when the charging operation begins.Sustained charging is verified if the device is charging for at least apredetermined duration according to the corresponding timer.

In another embodiment, verification of sustained charging includestesting and documenting the charging status of the mobile device everyfive minutes. Sustained charging is achieved if the device is chargingfor at least a predetermined number of consecutive tests. Those of skillin the art will appreciate that there are methods, other than theembodiment disclosed herein, for determining charging duration.

Determining (250) whether there has been sustained charging may includeverifying the mobile device has been charging for at least apredetermined duration. If sustained charging is detected, the depictedmethod 200 proceeds to the catalog operation 260. Otherwise the methoditerates to the determine location operation 210.

Cataloging (260) the current location may include storing informationabout the current location which identifies the current location aseither a potential charging point or charging point. The method maydetermine the status of the current location (i.e., potential chargingpoint or charging point). The method may also maintain information onpotential charging point and charging point usage. Additional detail ofthe catalog operation 260 is depicted and described in further detail inFIG. 3.

FIG. 3 is a flowchart depicting one embodiment of a catalog charginginformation method 300. As depicted, the catalog charging informationmethod 300 includes determining (310) whether the current location is anexisting charging point, recording (320) a potential charging point,determining (330) whether multiple occurrences exist, recording (340)the current location as a charging point, and recording (350) thecharging point usage. The catalog charging information method 300enables the mobile device to store and maintain potential charging pointand charging point usage information so the information may bereferenced in the future.

Determining (310) whether the current location is an existing chargingpoint may include verifying if the current location is currentlycontained in the list of charging points. If the current location iscontained in the list of charging points, the depicted method 300proceeds to the record usage operation 350. Otherwise, the methodproceeds to the record a potential charging point operation 320.

Recording (320) a potential charging point may include storinginformation corresponding to the current location in a list of locationsidentifying potential charging locations. A potential charging point maybe defined as a location where a mobile device has been charged for asustained duration (i.e., a sustained charge). A charging point,sometimes referred to as a confirmed charging point, may correspond to alocation that has been used multiple times (i.e., multiple charges) tocharge the mobile device. In one embodiment, the duration correspondingto ‘sustained duration’ and the required number of charges to qualify as‘multiple charges’ are preconfigured in the mobile device. In anotherembodiment, the duration corresponding to ‘sustained duration’ and therequired number of charges to qualify as ‘multiple charges’ areconfigurable by the user of the mobile device.

Determining (330) whether multiple occurrences exist may includeverifying if the current location is identified multiple times in a listof potential charging points. If the current location is identifiedmultiple times, the depicted method 300 proceeds to the record chargingpoint operation 340. Otherwise, the method proceeds to the record usageoperation 350.

Recording (340) the current location as a charging point may includestoring information corresponding to the current location in a list oflocations identifying (confirmed) charging points. In one embodiment,the list is maintained as a table in a database. In another embodiment,the list is a simple ordered text list. Those of skill in the art willrealize there are numerous options for recording informationcorresponding to the current location. Additionally, this operation mayalso include removing entries corresponding to the current location froma potential charging point list.

Recording (350) the charging point usage may include maintaining usageinformation corresponding to the current location. Usage information maybe used to monitor usage duration, frequency, and the like. In oneembodiment, usage information is recorded in a usage list containinginformation corresponding to both potential charging points and(confirmed) charging points. In another embodiment, usage information ismaintained by updating the existing record, corresponding to the currentlocation, in either the potential charging point list or the chargingpoint list.

FIG. 4 is a flowchart depicting one embodiment of a battery lifeconservation method 400. As depicted, the battery life conservationmethod 400 includes determining (410) a probable charging point,calculating (420) an arrival time, determining (430) whether a powerconservation mode is required, and switching (440) to a powerconservation mode. The battery life conservation method 400 is aniterative operation that enables a mobile device to identify a probablecharging point and calculate a probable arrival time at that location.Based on an arrival time, the mobile device may switch to a powerconservation mode, if necessary, to avoid running out of battery power.

Determining (410) a probable charging point may include gatheringinformation useful to the mobile device in determining the currentlocation of the mobile device and probable future actions. The gatheredinformation may include current location, previous location, date, time,day of the week, direction of travel (if moving), length of time atcurrent location (if stationary), and the like. The mobile device mayalso reference the list of (confirmed) charging points and prioritizethem according to the probability or likelihood that they may bevisited. Prioritization of the charging points may be based onstatistics such as, but not limited to, frequency of use, time of dayused, time since last use, distance to charging point, currently movingstatus, and current direction of travel (if moving).

Calculating (420) an arrival time may include calculating the estimatedtime required to reach a charging point. The calculation may includeadditional analysis of the information gathered in the determineprobable charging point operation 410. Gathered information may includecurrent location, and expected mode of transportation (e.g., publictransportation, walking, automobile, and the like). If the currentoperating environment is moving, the current direction of travel andrate of travel may also be collected. The operation may produce a resultin the form of an expected duration or elapsed time until the devicearrives at a charging point. Alternatively, the operation may produce aresult that is an actual time of arrival. The time may be expressed inlocal time, Coordinated Universal Time (UTC) or some other time notationformat.

Determining (430) whether a power conservation mode is required mayinclude identifying the current power mode in use, and verifying if theremaining charge in the battery is adequate to power the mobile deviceuntil the probable charging point is reached. If the battery does notcontain adequate charge and a power conservation mode is required, thedepicted method 400 proceeds to the switch mode operation 440. Otherwisethe method iterates to the determine charging point operation 410.

Switching (440) to a power conservation mode may include enabling amobile device to continue operating, but with limited or reducedfunctionality. There may be more than one conservation mode available ona mobile device, and the mode selected may be chosen based on the levelof battery conservation required. In one embodiment, at 7 pm on aWednesday, a mobile device has a remaining battery life of 2 hours underthe current power consumption mode. The mobile device determines thelocation to be a restaurant which is not a charging point. The mobiledevice has also determined, based on prior use information, the mobiledevice will likely be at the home of the user, which is a chargingpoint, by 9:30 PM. In an attempt to preserve battery life and remainuseful until the probable charging point is reached, the device mayswitch to a power conservation mode. The power conservation mode mayenable the mobile device to remain usable, with reduced functionality,until the probable arrival time at the charging point.

FIG. 5 is a flowchart depicting one embodiment of an inactive chargingpoint removal method 500. As depicted, the inactive charging pointremoval method 500 includes retrieving (510) validation points,determining (520) whether a charging location is active, removing (530)a charging location, and determining (540) whether there are morecharging locations to validate. The inactive charging point removalmethod 500 enables a mobile device to maintain a list of charging pointsthat have been recently used, and facilitates removal of charging pointsthat have not been accessed within a predetermined duration. The method500 may be invoked manually as required, or according to a predeterminedschedule.

Retrieving (510) validation points may include obtaining a list oflocations to be validated. The list of locations may include thecontents of both the list of potential charging points and the list of(confirmed) charging points that may have been created or updated duringthe catalog charging information operation 300. Additionally any listcontaining references to potential charging points or (confirmed)charging points may become input to this operation. Those of skill inthe art will appreciate that contents of a particular list may beprocessed individually, or multiple lists may be combined and processedas a single unit.

Determining (520) whether a charging location (i.e., potential chargingpoint or charging point) is active may include verifying that the mostrecent usage corresponding to the current charging location occurredwithin a predefined duration. If the current charging location has beenused during the specified duration, the depicted method 500 proceeds tothe determine whether there are more charging locations operation 540.Otherwise, the method proceeds to the remove charging location operation530.

Removing (530) a charging location may include receiving informationidentifying a charging location as inactive. The information identifyingthe inactive charging location may include a location identifier, anactual index into a database table containing a reference to a location,a generated hash name corresponding to a charging location, or the like.The identifying information may be used to remove all references to thecurrent inactive charging location. An inactive charging location may belocated and removed from any list containing references corresponding topotential charging points or (confirmed) charging points.

Determining (540) whether there are more charging locations to validatemay include verifying if there are more charging locations to check forrecent activity. If charging locations remain to be checked, thedepicted method 500 iterates to the determine if a charging location isactive operation 520. Otherwise, the method terminates.

FIG. 6 is a text diagram depicting one embodiment of monitoringinformation 600. As depicted, the monitoring information 600 includes adate and time 610, a location 620, and a status 630. Together, theinformation provides travel and charging history corresponding to amobile device.

In the depicted diagram, the date and time 610 may provide a uniqueidentifier or key for referencing information identifying a location andcharging status. Tracking the time may provide details indicating acharging pattern, allowing the mobile device to learn when and where auser habitually charges the mobile device. The date and time 610 mayalso be used to determine how recently a location has been used as acharging point, and in turn may be useful when performing maintenanceand removing an inactive charging location.

In the depicted embodiment, the location 620 and status 630 are gatheredand recorded every 5 minutes. The location 620 lists GPS coordinatesdocumenting the geographic location corresponding to the mobile deviceat a specific time. The status 630 records the charging status of eithercharging or not charging. As depicted in the diagram, a grouping ofentries 640 from a single location (i.e., 52.21481,0.1419) has a statusof charging. The grouping may be used by methods disclosed herein todesignate the location corresponding to the grouping of entries 640 as apotential charging point. If the particular location appears in multiplegroupings sometimes called charging sessions, the location may bedesignated as a (confirmed) charging point.

FIG. 7 is a block diagram depicting one example of a computing apparatus(i.e., computer) suitable for executing the methods disclosed herein.The computer 700 may be one embodiment of the server 120 depicted inFIG. 1. It should be appreciated that FIG. 7 provides only anillustration of one implementation and does not imply any limitationswith regard to the environments in which different embodiments may beimplemented. Many modifications to the depicted environment may be made.

As depicted, the computer 700 includes communications fabric 702, whichprovides communications between computer processor(s) 705, memory 706,persistent storage 708, communications unit 712, and input/output (I/O)interface(s) 715. Communications fabric 702 can be implemented with anyarchitecture designed for passing data and/or control informationbetween processors (such as microprocessors, communications and networkprocessors, etc.), system memory, peripheral devices, and any otherhardware components within a system. For example, communications fabric702 can be implemented with one or more buses.

Memory 706 and persistent storage 708 are computer readable storagemedia. In this embodiment, memory 706 includes random access memory(RAM) 716 and cache memory 718. In general, memory 706 can include anysuitable volatile or non-volatile computer readable storage media.

One or more programs may be stored in persistent storage 708 forexecution by one or more of the respective computer processors 705 viaone or more memories of memory 706. The persistent storage 708 may be amagnetic hard disk drive, a solid state hard drive, a semiconductorstorage device, read-only memory (ROM), erasable programmable read-onlymemory (EPROM), flash memory, or any other computer readable storagemedia that is capable of storing program instructions or digitalinformation.

The media used by persistent storage 708 may also be removable. Forexample, a removable hard drive may be used for persistent storage 708.Other examples include optical and magnetic disks, thumb drives, andsmart cards that are inserted into a drive for transfer onto anothercomputer readable storage medium that is also part of persistent storage708.

Communications unit 712, in these examples, provides for communicationswith other data processing systems or devices. In these examples,communications unit 712 includes one or more network interface cards.Communications unit 712 may provide communications through the use ofeither or both physical and wireless communications links.

I/O interface(s) 715 allows for input and output of data with otherdevices that may be connected to computer 700. For example, I/Ointerface 715 may provide a connection to external devices 720 such as akeyboard, keypad, a touch screen, and/or some other suitable inputdevice. External devices 720 can also include portable computer readablestorage media such as, for example, thumb drives, portable optical ormagnetic disks, and memory cards.

Software and data used to practice embodiments of the present inventioncan be stored on such portable computer readable storage media and canbe loaded onto persistent storage 708 via I/O interface(s) 715. I/Ointerface(s) 715 also connect to a display 722. Display 722 provides amechanism to display data to a user and may be, for example, a computermonitor.

The programs described herein are identified based upon the applicationfor which they are implemented in a specific embodiment of theinvention. However, it should be appreciated that any particular programnomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowcharts and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

What is claimed:
 1. A computer program product for detecting mobiledevice charging points, the computer program product comprising: atleast one non-transitory computer readable storage medium and programinstructions stored on the at least one non-transitory computer readablestorage medium, the program instructions comprising instructions to:determine a charging status of the mobile device, wherein the mobiledevice determines the mobile device is charging upon satisfaction ofpredetermined conditions including a first condition wherein a chargeris connected to a battery of the mobile device, a second conditionwherein a level of charge for the battery of the mobile device isincreasing, and a third condition wherein the charger is connected tothe battery of the mobile device for at least a predetermined length oftime, and wherein the mobile device determines the mobile device is notcharging upon non-satisfaction of the predetermined conditions;determine a current location of the mobile device by a globalpositioning system of the mobile device; catalog the current location asa confirmed charging point responsive to the mobile device determiningthe mobile device is charging at the current location and that themobile device has charged for at least the predetermined length of timeat the current location for at least a predetermined number of times, toprovide a list of confirmed charging points; determine by the mobiledevice an amount of charge remaining for the battery of the mobiledevice; reference the list of confirmed charging points, wherein thereferencing of the list of confirmed charging points is performedresponsive to the mobile device determining the mobile device is notcharging; identify a confirmed charging point that is most likely to bevisited by the mobile device, responsive to the mobile devicedetermining the mobile device is not charging, wherein identifying theconfirmed charging point that is most likely to be visited includesprioritizing the list of confirmed charging points based on a frequencyof use by the mobile device, a time of day used by the mobile device, atime since last use by the mobile device, a distance to the confirmedcharging point that is most likely to be visited, a current mobilitystatus of the mobile device, and a current direction of travel of themobile device; determine a probable travel time of the mobile device tothe confirmed charging point that is most likely to be visitedresponsive to the mobile device determining the mobile device is notcharging, wherein determining the probable travel time of the mobiledevice to the confirmed charging point that is most likely to be visitedincludes determining a direction of travel of the mobile device, a rateof travel of the mobile device and an expected mode of transportation ofthe mobile device, the expected mode of transportation includingwalking, bicycle, public transportation and automobile; and activate bythe mobile device a power conservation mode for the mobile deviceresponsive to the mobile device determining the mobile device is notcharging and the amount of charge required for the probable travel timeis greater than the amount of charge determined by the mobile device tobe remaining for the battery of the mobile device.
 2. The computerprogram product of claim 1, wherein the current location is stationary.3. The computer program product of claim 1, wherein the programinstructions comprise instructions to designate the current location asa potential charging point.
 4. The computer program product of claim 3,wherein the potential charging point is designated as a confirmedcharging point in response to multiple charging sessions at thepotential charging point.
 5. The computer program product of claim 1,wherein the program instructions include instructions to determine aconfirmed charging point that is unused over a selected duration andremove the confirmed charging point from the list of confirmed chargingpoints.
 6. The computer program product of claim 1, wherein the programinstructions further comprise instructions to determine if a currentoperating environment is moving.
 7. A computer system for detectingmobile device charging points, the computer system comprising: one ormore computer processors; one or more computer readable storage media;program instructions stored on the computer readable storage media forexecution by at least one of the computer processors, the programinstructions comprising instructions to: determine a charging status ofthe mobile device, wherein the mobile device determines the mobiledevice is charging upon satisfaction of predetermined conditionsincluding a first condition wherein a charger is connected to a batteryof the mobile device, a second condition wherein a level of charge forthe battery of the mobile device is increasing, and a third conditionwherein the charger is connected to the battery of the mobile device forat least a predetermined length of time, and wherein the mobile devicedetermines the mobile device is not charging upon non-satisfaction ofthe predetermined conditions; determine a current location of the mobiledevice by a global positioning system of the mobile device; catalog thecurrent location as a confirmed charging point responsive to the mobiledevice determining the mobile device is charging at the current locationand that the mobile device has charged for at least the predeterminedlength of time at the current location for at least a predeterminednumber of times, to provide a list of confirmed charging points;determine by the mobile device an amount of charge remaining for thebattery of the mobile device; reference the list of confirmed chargingpoints, wherein the referencing of the list of confirmed charging pointsis performed responsive to the mobile device determining the mobiledevice is not charging; identify a confirmed charging point that is mostlikely to be visited by the mobile device, responsive to the mobiledevice determining the mobile device is not charging, whereinidentifying the confirmed charging point that is most likely to bevisited includes prioritizing the list of confirmed charging pointsbased on a frequency of use by the mobile device, a time of day used bythe mobile device, a time since last use by the mobile device, adistance to the confirmed charging point that is most likely to bevisited, a current mobility status of the mobile device, and a currentdirection of travel of the mobile device; determine a probable traveltime of the mobile device to the confirmed charging point that is mostlikely to be visited responsive to the mobile device determining themobile device is not charging, wherein determining the probable traveltime of the mobile device to the confirmed charging point that is mostlikely to be visited includes determining a direction of travel of themobile device, a rate of travel of the mobile device and an expectedmode of transportation of the mobile device, the expected mode oftransportation including walking, bicycle, public transportation andautomobile; and activate by the mobile device a power conservation modefor the mobile device responsive to the mobile device determining themobile device is not charging and the amount of charge required for theprobable travel time is greater than the amount of charge determined bythe mobile device to be remaining for the battery of the mobile device.8. The computer system of claim 7, wherein the current location isstationary.
 9. The computer system of claim 7, wherein the programinstructions comprise instructions to designate the current location asa potential charging point.
 10. The computer system of claim 9, whereinpotential charging point is designated as a confirmed charging point inresponse to multiple charging sessions at the potential charging point.11. The computer system of claim 7, wherein the program instructionsinclude instructions to determine a confirmed charging point that isunused over a selected duration and remove the confirmed charging pointfrom the list of confirmed charging points.
 12. The computer system ofclaim 7, wherein the program instructions further comprise instructionsto determine if a current operating environment is moving.